package com.trkj.pojo;

import java.io.Serializable;
import javax.persistence.*;

import com.alibaba.fastjson.annotation.JSONField;

import java.sql.Timestamp;
import java.util.List;


/**
 * The persistent class for the JOBSEEKERSREGISTER database table.
 * 
 */
@Entity
@NamedQuery(name="Jobseekersregister.findAll", query="SELECT j FROM Jobseekersregister j")
public class Jobseekersregister implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@SequenceGenerator(name="JOBSEEKERSREGISTER_JSRID_GENERATOR", sequenceName="HR")
	@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="JOBSEEKERSREGISTER_JSRID_GENERATOR")
	@Column(name="JSR_ID")
	private long jsrId;

	@Column(name="JSR_MODE")
	private String jsrMode;

	@Column(name="JSR_NAME")
	private String jsrName;

	@Column(name="JSR_PHONE")
	private String jsrPhone;

	@Column(name="JSR_PLANTIME")
	private Timestamp jsrPlantime;

	@Column(name="JSR_REMARKS")
	private String jsrRemarks;

	@Column(name="JSR_RESULT")
	private String jsrResult;

	//bi-directional many-to-one association to Jobseekersmasterdate
	@OneToMany(mappedBy="jobseekersregister")
	@JSONField(serialize=false)
	private List<Jobseekersmasterdate> jobseekersmasterdates;

	//bi-directional many-to-one association to Position
	@ManyToOne
	@JoinColumn(name="POSITION_ID")
	private Position position;

	//bi-directional many-to-one association to Recruitplan
	@ManyToOne
	@JoinColumn(name="RECPLAN_ID")
	private Recruitplan recruitplan;

	public Jobseekersregister() {
	}

	public long getJsrId() {
		return this.jsrId;
	}

	public void setJsrId(long jsrId) {
		this.jsrId = jsrId;
	}

	public String getJsrMode() {
		return this.jsrMode;
	}

	public void setJsrMode(String jsrMode) {
		this.jsrMode = jsrMode;
	}

	public String getJsrName() {
		return this.jsrName;
	}

	public void setJsrName(String jsrName) {
		this.jsrName = jsrName;
	}

	public String getJsrPhone() {
		return this.jsrPhone;
	}

	public void setJsrPhone(String jsrPhone) {
		this.jsrPhone = jsrPhone;
	}

	public Timestamp getJsrPlantime() {
		return this.jsrPlantime;
	}

	public void setJsrPlantime(Timestamp jsrPlantime) {
		this.jsrPlantime = jsrPlantime;
	}

	public String getJsrRemarks() {
		return this.jsrRemarks;
	}

	public void setJsrRemarks(String jsrRemarks) {
		this.jsrRemarks = jsrRemarks;
	}

	public String getJsrResult() {
		return this.jsrResult;
	}

	public void setJsrResult(String jsrResult) {
		this.jsrResult = jsrResult;
	}

	public List<Jobseekersmasterdate> getJobseekersmasterdates() {
		return this.jobseekersmasterdates;
	}

	public void setJobseekersmasterdates(List<Jobseekersmasterdate> jobseekersmasterdates) {
		this.jobseekersmasterdates = jobseekersmasterdates;
	}

	public Jobseekersmasterdate addJobseekersmasterdate(Jobseekersmasterdate jobseekersmasterdate) {
		getJobseekersmasterdates().add(jobseekersmasterdate);
		jobseekersmasterdate.setJobseekersregister(this);

		return jobseekersmasterdate;
	}

	public Jobseekersmasterdate removeJobseekersmasterdate(Jobseekersmasterdate jobseekersmasterdate) {
		getJobseekersmasterdates().remove(jobseekersmasterdate);
		jobseekersmasterdate.setJobseekersregister(null);

		return jobseekersmasterdate;
	}

	public Position getPosition() {
		return this.position;
	}

	public void setPosition(Position position) {
		this.position = position;
	}

	public Recruitplan getRecruitplan() {
		return this.recruitplan;
	}

	public void setRecruitplan(Recruitplan recruitplan) {
		this.recruitplan = recruitplan;
	}

}